package com.iwhalecloud.bss.kite.cucc.service.batch.enums;

import com.iwhalecloud.bss.kite.common.util.KiteStringUtils;

/**
 * @author lyx
 * @version V1.0
 * @Description:
 * @date 2021/6/4
 * @Package com.iwhalecloud.bss.kite.cucc.service.batch.enums
 */
public enum BatchAcceptStatusEnum {

    /**
     * 批次状态，1000上传成功（上传完成）
     */
    STATUS_CD_1000("1000", "上传成功"),

    /**
     * 批次状态，1100校验中（开始校验）
     */
    STATUS_CD_1100("1100", "校验中"),

    /**
     * 批次状态，1200 校验完成（全部校验完成）
     */
    STATUS_CD_1200("1200", "校验完成"),

    /**
     * 批次状态，1300校验失败
     */
    STATUS_CD_1300("1300", "校验失败"),

    /**
     * 批次状态，1400提交处理中
     */
    STATUS_CD_1400("1400", "提交处理中"),

    /**
     * 批次状态，1500处理完成（提交订单归集完成）
     */
    STATUS_CD_1500("1500", "处理完成"),

    /**
     * 批次状态，1600处理失败
     */
    STATUS_CD_1600("1600", "处理失败"),
    
    /**
     * 校验状态，1000新建
     */
    CHECK_STATUS_1000("1000", "新建"),
    
    /**
     * 校验状态，1100校验失败
     */
    CHECK_STATUS_1100("1100", "校验失败"),
    
    /**
     * 校验状态，1200校验成功
     */
    CHECK_STATUS_1200("1200", "校验成功");


    private String statusCd;

    private String statusName;

    BatchAcceptStatusEnum(String statusCd, String statusName) {
        this.statusCd = statusCd;
        this.statusName = statusName;
    }

    public String getStatusCd() {
        return statusCd;
    }

    public String getStatusName() {
        return statusName;
    }

    public static String getStatusNameByCd(String statusCd) {
        BatchAcceptStatusEnum[] statusEnums = values();
        for (BatchAcceptStatusEnum statusEnum : statusEnums) {
            if (KiteStringUtils.equals(statusEnum.getStatusCd(), statusCd)) {
                return statusEnum.getStatusName();
            }
        }
        return null;
    }
}
